// 作者:于大明
// 职责：只存放api的请求的接口的数据

//-------------------------Service引入----------------------------------
 import MBProductOrder from '@/service/07MB/MBProductOrderAppService.js';

let mixinApi = {
    // 负责程序中需要进行set的数据 就是页面交互需要改的数据 比如点击checkbox 需要设置true false 和存放ajax的输入输出 (尽量少去定义data里面的属性 多用computed或者filters或者组件进行处理) 
    // 1 能不能在页面单行代码实现
    // 2 能不能不用data methods去实现这个功能
    data() {
        return {
            //---------------------接口输入输出 接口名称+in/out 命名 列如接口名称是getStudentList----------------------
            // 一些常用参数如下
            // storeId: '', // 门店ID
            // marketerID: '', // 销售经理
            // pageIndex: 1, // 第几页
            // pageSize: 20, // 每页多少条
            // orderBy: 'createTime desc' // 排序

            // -------------------------Url的参数获取-----------------------------------------------------------------
            queryObj: {
                id: '' // 参数描述
            },

            
            // 接口输入参数
            getMBOrderLstIn: {
            },
            // 接口输出参数
            getMBOrderLstOut: {
                datas: [], // 返回的datas数组数据
                // data:{}, // 返回data的数据
                // rowCount: 0 // 总共多少条数据
            },
        };
    },
    // 负责和页面事件进行交互
    methods: {
		async updateMBOrder(oprItem){
			const obj={
				'cancle':40,
				'success':30,
				'pay':100
			}
			const productOrderType=obj[oprItem.opr];
			if(productOrderType==100){
				const objectId=oprItem.item.id;
				const payRes= await this.$cw.payOrder(40,oprItem.item.productGUID,oprItem.item.productName,objectId);
				if(payRes){
					setTimeout(()=>{
						this.getMBOrderLst();
					},800)
				}
			}else{
				const confirmText=`确认设置为${productOrderType==40?'取消':'完成'}吗？`;
				const resConfirm= await this.$cw.showConfirm(confirmText);
				if(resConfirm){
					let res = await MBProductOrder.UpdateMBOrder({
						productOrderGUID:oprItem.item.id,
						productOrderType:obj[oprItem.opr]
					});
					// 判断接口是正常返回 没有报错
					if (res) {
						this.getMBOrderLst();
					}
				}
			}
		
		},
		
        async getMBOrderLst(){
			let res = await MBProductOrder.GetMBOrderLst(this.getMBOrderLstIn);
			// 判断接口是正常返回 没有报错
			if (res) {
			    this.getMBOrderLstOut = res;
			}
		}    },
}
export default mixinApi;